package com.eedi.framework.notify.controller.sys.vo.template;

import com.eedi.framework.common.enums.CommonStatusEnum;
import com.eedi.framework.notify.enums.SysNotifyTemplateTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "系统界面 - 站内信模版 Response VO")
@Data
public class SysNotifyTemplateResp {

    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private String sysNotifyTemplateId;

    @Schema(description = "模版名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "测试模版")
    private String sysNotifyName;

    @Schema(description = "模版编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "SEND_TEST")
    private String sysNotifyCode;

    @Schema(description = "模版类型，对应 sys_notify_template_type 字典", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    private SysNotifyTemplateTypeEnum sysNotifyType;

    @Schema(description = "发送人名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "土豆")
    private String sysNotifyNickname;

    @Schema(description = "模版内容", requiredMode = Schema.RequiredMode.REQUIRED, example = "我是模版内容")
    private String sysNotifyContent;

    @Schema(description = "参数数组", example = "name,code")
    private List<String> sysNotifyParams;

    @Schema(description = "状态，参见 CommonStatusEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    private CommonStatusEnum sysNotifyStatus;

    @Schema(description = "备注", example = "我是备注")
    private String sysNotifyRemark;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private LocalDateTime createTime;

}
